#pragma warning disable 108
using System;
using System.Runtime.InteropServices;
using System.Collections.Generic;
using Cephei;
using Cephei.Core;
using Cephei.Core.Generic;
using Microsoft.FSharp.Core;
namespace Cephei.QL.Models.Marketmodels
{
    /// <summary> 
	/// ! Abstract base class. Requires extra methods above that of marketmodelevolver to let you fix rates via importance sampling.  The evolver does the actual gritty work of evolving the forward rates from one time to the next.  This is intended to be used for the Fries-Joshi proxy simulation approach to Greeks
	/// </summary>
    [Guid ("408ADE7F-4FA3-4c58-80AF-D9693EE8D7FB"),ComVisible(true)]
	public interface IConstrainedEvolver : Cephei.QL.Models.Marketmodels.IMarketModelEvolver
	{
		///////////////////////////////////////////////////////////////
        // Methods
        //
        /// <summary> 
		/// 
		/// </summary>
		 IConstrainedEvolver SetConstraintType(Cephei.Core.IVector<UInt64> startIndexOfSwapRate, Cephei.Core.IVector<UInt64> EndIndexOfSwapRate);
    }   

    /// <summary> 
	/// ! Abstract base class. Requires extra methods above that of marketmodelevolver to let you fix rates via importance sampling.  The evolver does the actual gritty work of evolving the forward rates from one time to the next.  This is intended to be used for the Fries-Joshi proxy simulation approach to Greeks Factory
	/// </summary>
   	[ComVisible(true)]
    public interface IConstrainedEvolver_Factory 
    {
        ///////////////////////////////////////////////////////////////
        // Factory methods
        //
    }
}

